package com.xmgps.bdt.infrastructure.util;

import io.netty.buffer.ByteBuf;

/**
 * @author wangzezhou
 * @date 2022/5/26
 */
public class XorUtil {

    /**
     * 计算数据字节的异或值
     * @param in
     * @param dataLen
     * @return
     */
    public static byte calcXOR(ByteBuf in, int dataLen){

        if (!in.isReadable()){
            return 0x00;
        }

        byte xor = 0x00;
        for(int i = 0; i < dataLen; ++i){
            xor = (byte) (xor ^ in.getByte(i));
        }

        return xor;
    }
}
